#include <bits/stdc++.h>
using namespace std;

void fileIO(string s) {
    freopen((s + ".in").c_str(), "r", stdin);
    freopen((s + ".out").c_str(), "w", stdout);
}

int main() {
    ios::sync_with_stdio(false);
    cin.tie(0);

    int n, m;
    cin >> n >> m;

    vector<string> s(n);
    for(int i = 0; i < n; i ++)
        cin >> s[i];
    
    for(int i = 0; i < n; i += 2) {
        for(int j = 0; j < m; j += 2) {
            int cnt[2] = {0, 0};
            for(char c : {s[i][j], s[i][j + 1], s[i + 1][j], s[i + 1][j + 1]})
                cnt[c == '#'] ++;
            if(cnt[0] > cnt[1]) cout << '.';
            else if(cnt[0] == cnt[1]) cout << '?';
            else cout << '#';
        }
        cout << "\n";
    }
    return 0;
}

/*
4 6
##.#..
.##..#
..#...
#.##..
*/